/**
 * 给定一个二叉树的 根节点 root，请找出该二叉树的 最底层 最左边 节点的值。
 *
 * 假设二叉树中至少有一个节点。
 *https://leetcode.cn/problems/LwUNpT/
 * 思路：广度优先遍历（层序遍历）
 *
 */
class FindBottomLeftValueChenxu {
    public int findBottomLeftValue(TreeNode root) {
        Queue<TreeNode> qu=new LinkedList<>();
        int val=0;
        qu.offer(root);
        while(!qu.isEmpty()){
            int size=qu.size();
            boolean falg=true;
            for(int i=0;i<size;i++){
                root=qu.poll();
                if(falg==true){
                    val=root.val;
                    falg=false;
                }
                if(root.left!=null){
                    qu.offer(root.left);
                }
                if(root.right!=null){
                    qu.offer(root.right);
                }
            }
        }
        return val;
    }
}